<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /* 
            千万注意: translate3d()使用方法可能和你想的不太一样

            
            - transform: rotate3d(x,y,z,deg)
                - x,y,z 这三个代表的是生成自定义轴，什么叫自定义轴呢？比如我给x为1，y为1，z为0，则自定义轴就是一条x和y轴中间的那条对角线。就像正方形的对角线一样。如果x,y,z都为1，则自定义轴就像正方体的那个中线一样。如果x为1，y和z都为0，则自定义轴此时就是x轴本身。说起来有点复杂，其实自己试一下就知道了。正方向依然支持左手定则

                - deg代表的是度数，如果你想沿着x轴转360deg，可以写成translate3d(0,0,1,360deg)
        */
        body{
            perspective: 1000px;
        }
        div{
            margin: 200px auto;
            width: 200px;
            height: 200px;
            background-color: pink;
            transition: all 2s;
        }
        div:hover{
            /* 
                注意: 伸出你的左手，四指弯曲。大拇指指向z轴的正方向，此时你的四指弯曲的方向就是沿着z轴旋转时候的正方向。x、y轴也同样可以用这个'左手定则'
            */
            transform: rotateZ(180deg);
        }
    </style>
</head>
<body>
    <div></div>
</body>
</html>